package san.java.methods_06;

/**
 * 类的构造函数
 *  默认无参构造方法
 *      如果定义了显示的构造方法,就不会生成默认的构造方法了, 这一点和C++一样
 *      默认构造方法前面是否有访问修饰符跟定义的类有关:
 *          1. 类是public的,那么默认构造方法就是public的
 *          2. 类是default的,默认构造就是default的
 *
 *  显示构造方法:
 *      构造方法的重载:
 *          1. 重载就和普通方法的重载是一样的
 *
 *
 *  注意:
 *      1. 每个类至少有一个构造器
 *      2. 默认构造器的修饰符与所属类的修饰符一致
 *      3. 如果定义了显示的构造方法,就不会生成默认的构造方法了, 这一点和C++一样
 *      4. 父类构造器不可被子类继承
 */

public class constructor {

    private String name;
    private int age;

    /**
     * 默认无参构造方法
     *  如果定义了显示的构造方法,就不会生成默认的构造方法了, 这一点和C++一样
     *  默认构造方法前面是否有访问修饰符跟定义的类有关:
     *      1. 类是public的,那么默认构造方法就是public的
     *      2. 类是default的,默认构造就是default的
     *
     *
      */
    public constructor(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public static void main(String[] args) {
//        constructor c = new constructor();  //  没有默认的无参构造了

    }


}
